strtol(3) | 2007-10-27-16:31 | strtol(3) |
Назва¶
strtol, strtoll, strtoq - перетворює ланцюжок на довге ціле
Огляд¶
#include <stdlib.h>
long int
strtol(const char *nptr, char **endptr, int base);
long long int strtoll(const char *nptr, char **endptr, int base);
Опис¶
Функція strtol() перетворює ланцюжок nptr на довге ціле, відповідно до основи системи числення base; остання повинна знаходитись між 2 та 36 включно, або бути спеціальним значенням 0.
Ланцюжок повинен починатися з необов'язкових пропусків (як їх розпізнає isspace(3)) з наступним необов'язковим знаком `+' або `-'. Якщо base дорівнює нуль або 16, ланцюжок може включати префікс `0x' і число читатиметься як шістнадцяткове; нульове значення base розглядається як десяткова система числення, хіба наступним знаком є `0', в такому випадку число вважатиметься вісімковим.
Остаток ланцюжка буде перетворено у значення типу long int у очевидний спосіб, зупиняючись на першому знакові, що не є чинною цифрою в даній системі числення. (В системах більших за десяткову, літера `A' верхнього чи нижного регістру позначає 10, `B' - 11 і так далі, з `Z', що відповідає 35.)
Якщо значення endptr не дорівнює NULL, strtol() збереже адресу першого ж нечинного знаку в **endptr.
2007-10-27-16:31 | © 2005-2007 DLOU, GNU FDL |